Method for categorization of multiple providers in a wireless communication service environment

ABSTRACT

A communication device locates a preferable wireless service provider in a multi-service provider environment using a frequency band search schedule. Initially, the communications device registers with a less preferred service provider in a first frequency band. While remaining registered with the less preferred service provider, the device examines several frequency bands in the order specified by the frequency band search schedule. A frequency band is examined by dividing the frequency band into many sub-bands, and by locating the strongest signal above a threshold within the sub-band being examined. The examination continues until a second frequency band having a more preferred service provider is located. The communication device then registers with the more preferred service provider. The category of service provider may be identified and displayed on the communication device.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No. 12/186,358, filed Aug. 5, 2008, which is currently allowed and is a continuation of U.S. patent application Ser. No. 10/949,313, filed Sep. 27, 2004, now U.S. Pat. No. 7,409,213, which is a continuation of U.S. patent application Ser. No. 10/099,992, filed Mar. 19, 2002, now U.S. Pat. No. 6,807,418, which is a continuation of U.S. patent application Ser. No. 09/332,499, filed Jun. 14, 1999, now U.S. Pat. No. 6,377,787, which is a continuation of U.S. patent application Ser. No. 08/672,908, filed Jun. 28, 1996, now U.S. Pat. No. 6,195,532. The entire disclosures of the prior applications are hereby incorporated by reference herein in their entirety.

BACKGROUND OF THE INVENTION

The present invention relates to communications; more specifically, communications in a multi-service provider environment.

FIG. 1 illustrates a portion of the radio frequency spectrum. Frequency range 10 centered around 800 MHz has historically been known as the cellular frequency range and frequency range 12 centered about 1900 MHz is a newer defined range associated with personal communication services (PCS). Each range of frequencies, i.e., the cellular and PCS, are broken into two portions. In cellular frequency range 10, there is an uplink portion 14 which is used for communications from a mobile communication device to a base station such as a cellular base station. Portion 16 of cellular frequency range 10 is used for downlink communications, that is communications from a cellular base station to a mobile communication device. In similar fashion, Portion 18 of PCS frequency range 12 is used for uplink communications, that is, communications from a mobile communication device to a base station. Portion 20 of PCS frequency range 12 is used for downlink communications, i.e., communications from a base station to a mobile communication device.

Each of the frequency ranges are broken into bands which are typically associated with different service providers. In the case of cellular frequency range 10, frequency bands 30 and 32 are designated band “a” for uplink and downlink communications, respectively. In a particular geographic area, a cellular service-provider is assigned frequency band “a” in order to carry out mobile communications. Likewise, in the same geographic area another cellular service provider is assigned frequency bands 34 (uplink) and 36 (downlink) which are designated band “b”. The frequency spectrums assigned to the service providers are separated so as to not interfere with each others communications and thereby enable two separate service providers to provide service in the same geographic area. Recently, the US government auctioned the PCS frequency spectrum to service providers. As with the cellular-frequency range, the PCS frequency range is broken into several bands where a different service provider may use a particular frequency band for which it is licensed within a particular geographical area. The PCS bands are referred to as A, B, C, D, E and F. The A band includes uplink band 50 and downlink band 52. The B band includes uplink band 54 and downlink band 56. Band C includes uplink band 58 and downlink band 60. Each uplink and downlink band of the A, B and C bands are approximately 30 MHz wide. The D band includes uplink band 62 and downlink band 64. The E band includes uplink band 66 and downlink band 68. Likewise, band F includes uplink band 70 and downlink band 72. The uplink and downlink bands of bands D, E and F are approximately 10 MHz wide each. It should be noted that with the cellular and PCS frequency bands, it is possible to have as many as eight different wireless communication service providers in a particular area.

Each of the different cellular and PCS bands consist of control channels and communication channels in both the uplink and downlink direction. In the ease of analog cellular bands, there are 21 control channels for both the “a” and “b” bands. Each of the control channels includes an uplink and a downlink portion. The control channels transmit information such as an SOC (System Operator Code), an SID (System Identifier Code), paging information call setup information and other overhead information such as information relating to registering with the mobile communication system. The portion of the cellular band's spectrum not occupied by the control channels is used for communication channels. Communication channels carry voice or data communications, where each channel consists of an uplink and downlink communications link. Presently there are several cellular communication standards. An analog standard known as EIA/TIA 553 was built upon the AMPS (Advanced Mobile Phone Service) standard. This standard supports 21 analog control channels (ACC) and several hundred analog voice or traffic channels (AVC). A newer standard is the EIA/TIA 1S54B standard which supports dual mode operation. Dual mode operation refers to having an analog control channel, and either an analog voice/traffic channel or a digital traffic channel (DTC). The AVC or DTC are used for actual communications, and the ACC is used to transfer information relating to, for example, call set-ups, service provider identification, and the other overhead or system information.

A newer standard, the EIA/TIA IS136 standard supports communications covered by both analog and dual mode cellular, and also includes a totally digital communication scheme which was designed for the PCS frequency bands A-F and cellular frequency bands “a” and “b”. This standard allows for a digital traffic channel (DTC) and a digital control channel (DCCH). In the case of the DTC, not only is the voice or data communicated, but in addition, a digital channel locator (DL) is transmitted in the DTC. The DL enables a mobile communication device that locks onto the DTC to use the information in the DL to locate a DCCH for purposes of obtaining information such as the SOC, SID, paging information, and other system overhead information carried on the digital control channel.

When a mobile communication device such as a mobile telephone attempts to register with the service provider, it, locks onto a control channel and reads information such as the SOC and SID. If the SOC and/or SID correspond to a service provider with which the user has a communication services agreement, the telephone may register with the service provider's mobile communication system via the up-link control channel.

FIG. 2 illustrates a map of the United States illustrating cities such as Seattle, Chicago and Washington, D.C. For example, in Seattle frequency band A has been licensed to SOC (Service Operator Code) 001 with an SID of 43 and band C has been licensed to SOC 003 with a SID of 37. In Chicago, suppose that frequency band C has been licensed to SOC 001 with a SID equal to 57, and that band B has been licensed to SOC 003 with an SID of 51. In Washington, D.C. suppose that frequency band “a” has been licensed to an SOC 001 with a SID of 21, and that band A has been licensed to SOC 003 with an SID of 17. It should be noted that the same SOC may be found in several different locations although on different frequency bands. It should also be noted that the same SOC will be associated with different SIDs in each geographical area and that in the same geographic area different service providers have different SIDs. If a particular subscriber to a wireless telecommunication service has an agreement with a service provider having a SOC of 001, that subscriber would prefer to use systems with a SOC of 001 because the subscriber is likely to receive a less expensive rate. When the subscriber is in Seattle he/she would prefer to be on band A, and if in Chicago on band C, and if in Washington, D.C. on band “a”. The above described situation presents a problem for a wireless communication service subscriber. As a subscriber moves from one area of the country to another, the telephone when turned on, searches for the “home” service provider, or the service provider with which the subscriber has a pre-arranged agreement. If for example, the subscriber travels from Seattle to Chicago, when turning the phone on in Chicago, the phone will search through the different bands of the spectrum to identify the service operator with the code 001 in order to find the desired service provider.

In order to find a particular service provider, the phone may have to search through both the “a” and “b” cellular bands, and through the eight PCS bands. It should be recalled that there are up to 21 different ACCs in each of the “a” and “b” cellular bands. It maybe necessary to check 42 ACCS in order to find an ACC from which an SOC or SID may be obtained. Additionally, searching for a particular SOC or SID in PCS bands A through F is particularly time consuming. The digital control channels (DCCHs), which contain the SOC and SID, are not assigned to specific frequencies within a particular PCS band. As a result, the mobile communication device may find it necessary to search through the spectrum of each PCS band looking for a DCCH, or an active DTC that has a digital channel locator (DL) which will direct the mobile communication device to the DCCH. As illustrated above, the process of searching for a particular service provider is laborious and may require a period of time on the order of several minutes.

SUMMARY OF THE INVENTION

An embodiment of the present invention provides a method for locating a particular or desirable communications service provider in an environment having a plurality of service providers. After power-up, a mobile communications device such as a cellular telephone, checks the most recently used control channel to determine whether an optimal service provider is available on that channel. If an optimal service provider is not available or if that channel is not available, the mobile communication device performs a search through frequency spectrum in a pre-determined order until an optimal or acceptable service provider is located.

In another embodiment of the invention, the frequency spectrum is searched in a pre-determined order that changes based on information entered by a mobile communication device distributor or mobile communication device user. In yet another embodiment of the invention, the pre-determined order for searching the spectrum for service providers is updated by over the air programming. In still another embodiment of the present invention, the pre-determined order for searching is based on the mobile communication device's operational history.

In yet another embodiment of the invention, multiple service provider categories may be identified by matching the SID or SOC broadcast on a control channel with information stored in communication device.

In yet another embodiment of the invention, “alpha tags” may be displayed on the communication device identifying a particular service class while the communication device is in idle or camping mode.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, referred to herein and constituting a part hereof, illustrate preferred embodiments of the invention and together with the description, serve to explain the principles of the invention, wherein:

FIG. 1 illustrates the frequency spectrum used for wireless communications;

FIG. 2 illustrates service areas within the United States;

FIG. 3 is a block diagram of a mobile communication device;

FIG. 4 is a flow chart illustrating a spectrum searching routine;

FIG. 5 is a flow chart illustrating the global spectrum search routine;

FIG. 6 is a flow chart illustrating a periodic search routine;

FIG. 7 is a flow chart illustrating a received signal strength search routine,

FIG. 8 illustrates a search schedule;

FIG. 9 illustrates a search schedule ordered by registration history;

FIG. 10 illustrates a prioritized list of service providers; and

FIG. 11 illustrates display of an alphanumeric tag on a mobile communication device.

DETAILED DESCRIPTION OF THE DRAWINGS

FIG. 3 illustrates a block diagram of a mobile communication device such as a cellular telephone or personal communication device. Mobile communication device 10 includes transceiver 12 which sends and receives signals from antenna 15. Mobile communication device 10 is controlled by control system 14 which may include a microprocessor or a microcomputer. Control system 14 uses memory 16 for storing programs that are executed and for storing information that is entered by the user, the distributor, the communication services provider or the manufacturer. Information such as user preferences, user telephone numbers, preferred service provider lists and frequency search schedules are stored in memory 16. Memory 16 may include storage devices such as random access memory (RAM), read only memory (ROM) and/or programmable read-only memory (PROM). A user communicates with control system 14 via keypad 18. Control system 14 communicates information to the user via display 20. Display 20 may be used to display information such as status information and items such as telephone numbers entered via keypad 18. Sound information to be transmitted from the mobile communication device 10 is received via microphone 22, and sound communications received by mobile communication device 10 are played to the user via speaker 24.

After initially, powering-up a mobile communication device locates a service provider and registers with the service provider. Recalling FIG. 1, service providers are located at a plurality of frequency bands across the radio spectrum. In order to find a service provider, the communication device searches the spectrum to find service providers. The communications device examines received service provider code, e.g., SOCs (Service Operator Codes) or SIDS (System Identification Codes) to determine whether the service provider is in optimal, preferred or prohibited service provider.

FIG. 4 illustrates a process or program that control system 14 executes in order to find a desirable service provider. After power-up, step 30 is executed to initialize a non-optimal flag by clearing the flag. Step 32 determines whether the last service provider, that is, the service provider used before power down, was an optimal service provider. This is determined by checking the SOC or SID of the last service provider and determining whether that service provider's SOC or SID corresponds to the SOC or SID of an optimal service provider. The SOC or SID of the last service provider and a list of optimal and preferred service providers is stored in memory 16. If in step 32 it is determined that the prior service provider was not optimal, a global spectrum search is executed. If the last service provider was optimal, step 34 is executed where system 14 attempts to lock onto the control signal of the service provider. If the lock is unsuccessful, which may indicate that that control channel is no longer available or out of range, the global spectrum search is executed. If a lock is successful, step 36 is executed. In step 36, it is determined whether the control channel contains the SOC or SID of an optimal service provider. Once again, this is determined by comparing the SOC or SID from the control signal with a list of optimal service provider SOCs or SIDs. If the SOC or SID does not belong to that of an optimal service provider, the global spectrum search 33 is executed and the identity of the frequency band in which the non-optimal SOC or SID was located is passed to global search routine 33 so as to avoid unnecessarily searching this portion of the spectrum again. If in step 36 it is determined that an optimal service provider has been located, step 38 registers communication device 10 with the service provider. Step 40 is an idle state where control system 14 simply monitors the control channel of the service provider for communication system overhead information and for paging information that may indicate an incoming communication. While in idle state 40, a timer is activated which permits a low-duty cycle search to be performed if the phone is presently registered in a non-optimal service provider system. This situation may arise if global spectrum search 33 provides a preferred but not optimal service provider. Periodically, such as every 5 minutes, step 42 is executed to determine whether the non-optimal flag has been set, if the non-optimal flag is not set, control system 14: returns to idle step 40. If the non-optimal has been set, step 42 leads to the execution of periodic search routine 44 where a search is conducted in order to attempt to locate an optimal service provider. If periodic search routine 44 produces an optimal service provider, the non-optimal service provider-flag is cleared and the mobile communication device registers with the optimal service providers while executing periodic search routine 44. The mobile communications device then enters and idle state by executing step 40. If an optimal service provider is not located in routine 44, control system 14 returns to an idle state by executing step 40.

FIG. 5 illustrates a flowchart of global spectrum search routine 33 which is executed by control system 14. At step 60, it is determined whether the last control channel used by the mobile communication device was a personal communication services related control channel, that is, a control channel in the bands A through F. If the last control channel was not a PCS control channel, step 62 is executed. In step 62 it is determined whether the mobile communication device can lock onto, or receive and decode the last ACC (Analog Control Channel) that was used. If the mobile communication device can successfully lock onto the last ACC, step 64 is executed. If the communication device cannot lock onto the last ACC, step 66 is executed. In step 66, an RSS (Received Signal Strength Scan) is performed. This step involves the mobile communication device tuning to each of the 21 ACCs associated with the cellular band of the last used ACC, and attempting to lock onto the strongest received signal. In step 68, it is determined whether a lock has been achieved. In step 68 if a lock is not obtained, a predetermined search schedule is executed in order to find a service provider; if in step 68 lock is obtained, step 64 is executed where the SOC or SID obtained from the control channel is compared to a list of optimal SOCs or SIDS. In step 70 if the received SOC or SID is associated with an optimal service provider, step 72 is executed where the mobile communication device clears the non-optimal flags, registers with the communication service provider, and then enters an idle state by executing step 40 of FIG. 4. If, in step 70 it is determined that an optimal service provider sac or SID was not received, step 74 is executed where the identity of the frequency band just searched is stored in memory 16. Step 78 is executed after step 74, after 68 if a lock is not obtained, or after step 60 if the last control signal was from a PCS frequency band. In step 78, a search schedule is downloaded using a master search schedule. When downloading the search schedule in step 78, frequency bands previously searched are removed from the downloaded schedule so as to avoid searching bands that have already been searched. For example, bands searched in the search routine discussed with regard to step 74 are removed from the search schedule. After the modified search schedule has been loaded, a search pointer is initialized to point to the first band identified on the modified search schedule. The first band identified on the modified schedule is searched with regard to received signal strength (RSS) in step 79's RSS routines. In the case of bands “a” and “b”, the ACC with the strongest signal is selected. In the case of PCS bands, that is the bands A through F, 2.5 MHz sections of each band are search in 30 kilohertz steps. The mobile communication device tunes to the strongest signal that crosses a minimum threshold, e.g., −110 dBm, within the 2.5 MHz band being examined. In step 80 it is determined whether the signal is valid, that is, conforms to one of the above mentioned standards. If it is not valid, the search pointer is incremented in step 96, and if the signal is valid, step 82 is executed. In step 82 it is determined whether the signal is an ACC. If the signal is an ACC, the SOC or SID is decoded in step 90. If the signal is not an ACC, step 84 determines whether the received signal is a digital traffic channel (DTC) or a digital control channel (DCCH). If the signal is an DCCH the SOC or SID is extracted in step 90. If it is determined that the received signal is a DTC, step 86 is executed where the DL (digital channel locator) is extracted to identify the location of the DCCHs associated with the DTC that has been received. In step 88, the mobile communication device tunes to the strongest DCCH of the digital control channels identified by the DL. In step 90, the SOC or SID of the received DCCH is extracted and in step 91, it is determined whether the SOC or SID is associated with an optimal service provider. If the SOC or SID is associated with an optimal service provider, step 92 clears the non-optimal flag and step 96 registers the mobile communication device with the service provider. After step 96, the communication device enters the idle-state in step 40 of FIG. 4. If in step 91 it is determined that the SOC or SID does not belong to that of an optimal service provider, step 94 is executed where the SOC or SID is stored in memory 16 indicating whether the SOC or SID was at least a preferred rather than an undesirable or prohibited service provider with the spectral location of the SOC's or SID's control channel. In step 96 the search pointer that identifies the band being searched, is advanced to identify the next band in the schedule for searching. In step 98 it is determined whether the pointer has reached the end of the search schedule. If the end of the search schedule has not been reached, step 79 is executed to perform another received signal strength search routine as discussed above, and if the last frequency band has been searched, step 100 is executed. In step 100 the mobile communication device registers with the best stored SOC or SID, that is, an SOC or SID that has at least been associated with a preferred service provider. The best service provider can be identified by comparing the stored SOCs or SID with a list of preferred SOC or SID. The list of preferred SOCs or SIDS can include the optimal SOC(s) or SID(s) and a prioritized list of preferred SOCs or SIDS where the higher priority will get preference for registration. The listing also includes undesirable or prohibited SOC(s) or SID(s) that are used only in emergencies (e.g., 911 calls) or if the user enters an override command. After registering with the service provider in step 100, step 102 is executed to set the non-optimal flag, and then step 40 of FIG. 4 is executed where the mobile communication device enters the idle state.

It should be noted that the searching operation of FIGS. 4 and 5 may be carried out in a simplified manner. With regard to FIG. 4, control system 14 may execute step 44 after step 30 while always skipping steps 32, 34, 36 and 38. With regard to FIG. 5, control system 14 may start the global spectrum search with step 78 while always skipping steps 60-74.

FIG. 6 illustrates a flowchart for the periodic search routine executed by control system 14. In step 120 it is determined whether the periodic search flag has been set. If the periodic search flag has not been set, step 122 is executed where periodic search flag is set and the search schedule is initialized by loading the master search schedule into the search schedule used by the periodic search routine; however, the frequency band currently being received is not included in the search schedule used for the periodic search routine. Step 122 also sets a search pointer to the first band in the search schedule. In step 124 a received signal search (RSS) routine is conducted. As in step 79 of the global spectrum search routine of FIG. 5 step 124 is a RSS routine of any PCS and cellular bands that are in the search schedule. In the case of a cellular band search, the 21 ACCs are searched using a received signal strength search, i.e., the transceiver tunes to the strongest ACC. In the case of a PCS frequency band search, as discussed earlier, each band is broken into segments of approximately 2.5 MHz where a search of each segment is conducted in 30 kilohertz steps. The strongest signal within the 2.5 MHz segment and above a minimum threshold, such as 110 dBm, is selected. In step 126 the selected signal is examined to determine if it is valid by conforming to one of the previously referenced standards. If the signal is invalid, step 144 is executed and if the signal is valid, step 129 is executed. Step 129 determines whether the signal is an ACC. If the signal is an ACC, step 130 is executed when the SOC or SID is extracted and if the signal is not an ACC, step 132 is executed. Step 132 determines whether a DTC signal has been received. If the signal is not a DTC signal (therefore it is a DCCH signal), step 130 is executed to extract the SOC or SID from the DCCH signal. If in step 132 it is determined that a DTC has been received, step 134 is executed to extract the DL to enable tuning to a DCCH. In step 136 a received signal strength search is conducted of the DCCHs where the strongest signal is selected, and then step 130 is executed to extract an SOC or SID from the signal. In step 138 it is determined whether the SOC or SID is an optimal SOC or SID. If the SOC or SID is optimal, step 140 clears the non-optimal flag and in step 142 the mobile communication device registers with the service provider associated with the optimal SOC or SID. Step 40 of FIG. 4 is then executed to enter the idle state. If in step 138 it is determined that the SOC or SID was not an optimal service provider, step 144 is executed. In step 144 the search pointer is incremented to the next band to be searched. In step 146, it is determined whether the entire search schedule has been completed. If the schedule has not been completed, step 40 is executed so that the mobile communication device can be returned to the idle state. If in step 146 it is determined that the search schedule has been completed, step 148 clears the periodic search flag and then step 40 is executed so that the mobile communication device can enter the idle state.

FIG. 7 illustrates a flow chart of the RSS routine or received signal strength search routine which is carried out, for example, in steps 79 of FIG. 5 and 124 ‘of’ FIG. 6. Step 170 determines whether the band being searched in one of the “a” or “b” cellular bands. If a cellular band is being searched; step 172 is executed where the 21 ACCs are searched to determine which is the strongest, the strongest ACC is tuned to by transceiver 12 under the control of control system 14 and then the RSS routine is exited. If in step 170 it is determined that a cellular band is not being searched, step 78 tunes transceiver 12 to the beginning of the first 2.5 is band in the PCS band being searched. Step 178 also clears a search scratch pad memory location in memory 16. The search scratch pad is used to record the amplitude or strength and location of a received signal. In step 180 it is determined whether the signal being received is greater than a threshold. If the signal is greater than the threshold, step 182 is executed, if the signal is not greater than the threshold, step 184 in executed. In step 182 it determined whether the received signal strength is greater than the signal strength value stored in the search scratch pad. If the received signal is not greater, then step 184 is executed. If the received signal strength is greater, step 186 is executed and the present signal strength is recorded in the search scratch pad with the received signal's location in the spectrum. In step 184, transceiver 12 is tuned to a frequency 30 kilohertz higher than the frequency at which it was tuned. Step 188 determines whether the new frequency extends beyond the 2.5 MHz band currently being searched. If the new frequency does not exceed the 2.5 MHz band, step 180 is executed to once again examine received signal strength relative to the signal strength or amplitude value stored in the search scratch pad. If in step 188 it is determined that the 30 kilohertz increment extends beyond the 2.5 MHz band being examined, step 190 is executed. In step 190, the transceiver tunes to the signal location specified in the search scratch pad. If the signal is a valid signal and can be decoded, the RSS routine is exited. If the signal is not valid or cannot be decoded, (e.g., the signal does not conform to the above-referenced standards), step 192 is executed. In step 192, the transceiver is tuned to the beginning of the next 2.5 MHz band within the PCS band being searched. Step 194 determines whether the new 2.5 MHz band extends beyond the PCS band currently being searched. If the new increment extends beyond the PCS band being searched, the periodic search routine is exited. If the 2.5 MHz increase does not result in extending beyond the PCS band being searched, step 196 is executed. In step 196, the search scratch pad containing signal strength measurements and signal location information is cleared to prepare for searching another band. After step 196, step 180 is executed as described above.

FIG. 8 illustrates a master search schedule. The master schedule is used to initialize search schedules used in the above described search routines. The master search schedule is stored in a memory such as memory 16. The master search schedule can be initially programmed by the mobile communication device's manufacturer, distributor or user. It should be noted that the first location in the search schedule is left unprogrammed. If left blank, the blank is ignored when initializing the search schedules for the search routines. It is desirable for the first location to be programmed with the band in which the user's home service provider resides. For example, if the user has a service agreement with a service provider who is licensed to operate in PCS band B within the SID or geographical area in which the user most frequently is located, band B is programmed into the first slot of the master search schedule. If, for example, band B is programmed in the first slot, the slot originally containing band B is made blank. This avoids searching the same band twice. It should also be noted that the user can vary the master search schedule through keypad 18. Additionally, the master search schedule may be reprogrammed using signals received over the wireless communication channel. For example, the Mobile communication device may be restricted to accepting new programming for the master search schedule only from a service provider transmitting the home SID and an optimal SOC. It is also possible to accept over the air programming if the service provider sends a prearranged code. It is desirable to restrict the over the air programming through the use of codes, home SIDS and/or optimal SOCs to avoid unintentional or undesirable altering of the master search schedule. Over the air programming may be implemented using for example, logical sub-channels of a digital control channel. The logical sub-channels have the capability to transmit data addressed to a particular mobile communication device and to receive data, such as confirmation data, from the mobile communications device.

When the search schedules are initialized using the master search schedule, it is also possible to precede the first location in the master search schedule with other frequency bands based on, for example, the prior history of the mobile communication devices use. For example, the first location searched may be the location where the phone was last turned off (powered down) or the location where the phone was last turned on (powered up).

The frequency band search schedule may also be defined based upon supervision of the search process by the mobile communication device. By this method, the mobile communication device 10 provides, develops, and maintains a table in memory 16 for a counter associated with each frequency band in the master search schedule. While roaming, each time the mobile communication device acquires service from a preferred provider, the counter value associated with the frequency band is incremented thereby retaining information establishing a “personal roaming history” for the user. The mobile communication device then uses these counter values to alter the order of search of the frequency bands of the master search schedule.

FIG. 9 illustrates a table stored in memory 16 providing a counter associated with each frequency band in the master search schedule of FIG. 8. Based upon the counter values in the table, the frequency band with the highest registration success rate as defined by its associated counter value would follow the home frequency band in the master search schedule. Thereafter, each additional frequency band with a non-zero counter would follow, according to its counter value, from highest to lowest. Frequency bands with a counter value of zero would then follow non-zero entries in their originally defined order.

As preferably embodied, the counter associated with each frequency band should store only a finite number of registrations, e.g., 10, to keep storage requirements in memory 16 to a minimum. Additionally, the stored counter values may represent time-weighted registrations with more weight given to the most recent registrations. Advantageously, such time weighting of the counter values will serve to optimize search efficiency.

It will be appreciated that the occasion may arise when the master search schedule needs to be reset and the order of search may be redefined and the counter values zeroed by any of the previously discussed programming methods.

FIG. 10 illustrates a table stored in memory 16 defining the optimal service providers SOC and SIDS, and preferred service providers SOCs and SIDs. The SOC or SID with the lowest number has the highest priority and is preferred over service providers with higher numbers and therefore a lower priority. For example, an SOC or SID with a priority level 2 mould be preferred over an SOC or SID with a priority level of 5. The table may also include SOCs or SID that are undesirable or prohibited. In the case of SOCs or SIDs that are prohibited, it is desirable to permit connection to the prohibited SOCs or SIDs when an emergency call, such as a 911 call is attempted or when the user enters an override command. The table in FIG. 10 may be programmed by the manufacturer, by the distributor when the phone is purchased, or by the user. It is also possible to program the table of FIG. 10 over the air using restrictions similar to those used when programming the master search schedule over the air.

Multiple service provider categories may be identified by matching the SID or SOC broadcast on a control channel with the entries in the table of FIG. 10. These categories may include:

(1) home—service provider of choice and normally the service provider with whom the user has a service agreement. If a mobile communication device is registered on or finds a control channel for a home service provider, the device does not attempt to find service on any other frequency band.

(2) partner—a partner with the home service provider. If a mobile communication device is registered on or finds a control channel for a partner service provider, the device does not attempt to find service on any other frequency band.

(3) preferred—a service provider with whom the home service provider has a preferential rate and/or service agreement. The mobile communication device will register with a favored service provider only if a home or partner service provider is not found. On the occurrence of certain events, such as a control channel change and/or periodically, the mobile communication device will search other frequency bands for a home or partner service provider.

(4) forbidden—a service provider which is never used under normal circumstances.

(5) neutral—a service provider not identified by a SID or SOC entry in the table of FIG. 10. The mobile communication device will register on a neutral service provider if none of home, partner, or preferred service providers are found. On certain events such as a control channel change and/or periodically, the mobile communication device will search other frequency bands for a home, partner, or preferred service provider.

While the invention has been described in its preferred embodiments, it is to be understood that the words which have been used are words of description, rather than limitation, and that changes may be made within the purview of the appended claims without departing from the true scope and the spirit of the invention in its broader aspects. For example, “alpha tags” which are stored in memory 16, may be displayed on a mobile communication device identifying a particular service class while the mobile communication device is in idle or camping mode. The alpha tags can be programmed or changed as part of over the air activation or over the air programming as previously discussed. In an instance where XYZ is the home service provider, the alpha tags could be:

(1) home - “XYZ” (2) partner - “XYZ partner” (3) preferred - “XYZ preferred” (4) neutral - “ROAMING”

Existing standards allow for the broadcast of an alpha tag on a control channel and its display on a mobile communication device when in the idle or camping state. For instance, if a mobile communication device used by an XYZ subscriber was in an ABC market, the phone might display “ABC”. The system described herein, however, would allow the home service provider XYZ to control the mobile communication device to display “XYZ” as illustrated in FIG. 11. Further, alpha tags could be updated as marketing requirements dictate. 

1. A method by which a wireless communication device locates a wireless service provider in a multi-service provider environment, comprising: storing a frequency search schedule, the frequency search schedule having a plurality of frequency bands in a predetermined order; ordering at least one of the plurality of frequency bands in the frequency search schedule based upon time-weighted counts of previous registrations within each frequency bands; and examining the plurality of frequency bands until an acceptable service provider is located by examining the plurality of frequency bands in the predetermined order specified by the frequency search schedule.
 2. The method of claim 1, further comprising: storing a plurality of counters representing the time-weighted counts of the previous registrations with each frequency band of the frequency search schedule.
 3. The method of claim 2, further comprising: incrementing a counter corresponding to one of the plurality of frequency bands of the frequency search schedule upon registration with any service provider within that frequency band; and adjusting the counter by a time-weighting factor to produce a time-weighted count corresponding to the frequency band.
 4. The method of claim 1, further comprising: modifying the frequency search schedule using information transmitted over a wireless interface.
 5. The method of claim 1, wherein the examining frequency bands include first examining a frequency band that had carried a service provider last used by the communication device, if the service provider last used by the communication device was an optimal service provider.
 6. A method by which a wireless communication device locates a wireless service provider in a multi-service provider environment, comprising: storing a frequency search schedule, where the frequency search schedule comprises a listing of a plurality of frequency bands in a predetermined order; performing a global search for an acceptable service provider, including searching the plurality of frequency bands in the predetermined order specified by the frequency search schedule; while searching the plurality of frequency bands, if an optimal service provider is found, then halting the search and then registering with the optimal service provider; and after searching the plurality of frequency bands, if the optimal service provider has not been found, then registering with a best preferred service provider, where the best preferred service provider has a highest priority of all service providers found while searching the plurality of frequency bands.
 7. The method of claim 6, further comprising: ordering at least one or more of the plurality of frequency bands in the frequency search schedule based upon time-weighted counts of previous registrations with service providers in each frequency band.
 8. The method of claim 7, further comprising: incrementing a counter corresponding to one of the plurality of frequency bands in the frequency search schedule upon registration with a service provider in that one frequency band; and adjusting the counter by a time-weighting factor to produce a time-weighted count corresponding to that one frequency band.
 9. The method of claim 6, further comprising: attempting to lock onto a control channel before performing the global search, the control channel associated with a service provider last used by the wireless communication device, if the service provider last used by the wireless communication device was the optimal service provider.
 10. The method of claim 6, further comprising: searching a frequency band that had carried a service provider last used by the wireless communication device before performing the global search, if the last used service provider was the optimal service provider.
 11. The method of claim 6, further comprising: performing a periodic search for the optimal service provider if the global search did not find the optimal service provider.
 12. The method of claim 11, wherein performing a periodic search for the optimal service provider comprises: waiting in an idle state until a timer expires, then exiting the idle state; after exiting the idle state, searching one of the plurality of frequency bands that is next to be searched according to the frequency search schedule and a periodic search pointer; while searching the next one of the plurality of frequency bands, if the optimal service provider is found, then halting the searching and registering with the optimal service provider; and after searching the next one of the plurality of frequency bands, if the optimal service provider has not been found, then incrementing the periodic search pointer and returning to the idle state.
 13. A method by which a wireless communication device locates a wireless service provider in a multi-service provider environment, comprising: searching for an optimal service provider in a last used frequency band that was last used by the wireless communication device for a last used service provider; registering with the optimal service provider, if the optimal service provider was found in the last used frequency band; if the optimal service provider was not found in the last used frequency band, then performing a search for an acceptable service provider, where said search searches in a plurality of frequency bands listed in a search schedule in an order specified by the search schedule; while performing the search, if the optimal service provider is found, then halting the search and registering with the optimal service provider; and after performing the search, if the optimal service provider has not been found, then registering with a service provider having a highest priority.
 14. The method of claim 13, further comprising: performing a periodic search for the optimal service provider if the search did not find the optimal service provider.
 15. The method of claim 14, wherein said performing said periodic search for the optimal service provider comprises: waiting in an idle state until a timer expires, then exiting the idle state; after exiting the idle state, searching a next one of a plurality of frequency bands listed in a periodic search schedule, wherein the next one frequency band is next to be searched according to the periodic search schedule and a periodic search pointer; while searching the next one of the plurality of frequency bands, if the optimal service provider is found, then halting the searching and registering with the optimal service provider; and after searching the next one of the plurality of frequency bands, if the optimal service provider has not been found, then incrementing the periodic search pointer and returning to the idle state.
 16. The method of claim 13, further comprising: removing the last used frequency band from the search schedule if the last used frequency band was searched before performing the search.
 17. The method of claim 15, further comprising: removing a frequency band from the periodic search schedule wherein the frequency band removed is one of the plurality of frequency bands listed in a periodic search schedule in which the best service provider was found.
 18. The method of claim 13, further comprising: ordering at least one or more of the plurality of frequency bands in the search schedule based upon time-weighted counts of previous registrations with service providers in each frequency band.
 19. The method of claim 14, further comprising: ordering at least one or more of the plurality of frequency bands in the periodic search schedule based upon time-weighted counts of previous registrations with service providers in each frequency band. 